Computer systems are used to distribute various kinds of content. One example of content is advertising, where advertisements can be presented on a computer screen, on a television screen or on a billboard, to name just a few examples. Content such as an advertisement can be created for display to all members of a general intended audience, or the content presentation can be determined on a user-by-user basis, for example.
Text included in content can be generated using one or more fonts. A font can include characters that make up a complete typeface, of which common examples are Times, Courier and Helvetica. Content in languages other than English can use non-Latin scripts for rendering a message. Fonts are sometimes packaged together with a particular electronic document, such as an advertisement. When collected in a file, some non-Latin scripts can occupy a significant amount of storage space, such as of the order of 20 MB.
A known system for serving fonts to a client device sends a font file containing only a subset of glyphs for a given font in response to a request from the client. The font file is therefore of a smaller size than if all possible font glyphs were transmitted. For example, if a word is entered at the client, the server in response creates a font file containing glyphs corresponding to the entered characters only. If further characters are subsequently entered, a further request needs to be sent to the server which then has to generate and return a new font file containing the updated glyphs. Such additional transfers incur a bandwidth, storage and time cost.